package com.alks.function.service.chengKong;

import com.alks.entity.data.entity.YfOrderPartName;
import com.alks.entity.data.response.ResponseInfo;
import com.alks.function.data.request.chengKong.*;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

public interface PartService {
    ResponseInfo getPartList(PartRequest request);

    ResponseInfo getPartAdd(YfOrderPartName yfOrderPartName);

    ResponseInfo getPartUpdate(YfOrderPartName yfOrderPartName);

    ResponseInfo getPartDel(String partName);

    ResponseInfo getClassification(MatterRequest request);

    ResponseInfo getMaterialProperties(MatterRequest request);

    ResponseInfo getMaterialPropertiesIn(List<MaterialRequest> request);

    ResponseInfo getMaterialPropertiesAdd(MaterialAddRequest request);

    ResponseInfo getMaterialQueryList(MaterialQueryRequest request);

    ResponseInfo getMaterialPropertiesDel(String mtlNo);

    ResponseInfo getMaterialPropertiesUpdate(MaterialUpdateRequest request);

    ResponseInfo getMaterialProperties2Update(Map<String, MaterialUpdate2Request> request);

    ResponseInfo getAdhesiveMaterial(AdhesiveMaterialRequest request);

    ResponseInfo getCacheAdd(CacheAddRequest request);

    ResponseInfo getCompositeMaterials(List<CacheRequest> request);

    ResponseInfo getCompositeMaterialsAdd(AdhesiveMaterialAddRequest request);

    ResponseInfo getCacheList();

    ResponseInfo getCacheDel(List<String> ids);

    ResponseInfo getCacheMove(Integer id, Integer choose);

    ResponseInfo getCacheUpdate(List<CacheRequest> request);

    ResponseInfo getChooseCompositeMaterials(AdhesiveMaterialChooseRequest request);

    ResponseInfo getInsertMaterial(AdhesiveMaterialChooseRequest request);

    ResponseInfo getChooseCurrentMaterials(AdhesiveMaterialChooseRequest request);

    ResponseInfo getChooseCurrentBomMaterials(AdhesiveMaterialChooseRequest request);

    void PartExport(PartRequest request, HttpServletResponse response);

    ResponseInfo restoration(AdhesiveMaterialChooseRequest request);

    ResponseInfo restoration2(AdhesiveMaterialChooseRequest request);

    ResponseInfo getMtlNoByMaterial(AdhesiveMaterialChooseRequest request);

    ResponseInfo getMtlNoByMaterial2(AdhesiveMaterialChooseRequest request);

    ResponseInfo getMtlNameByMaterial(Map<String, String> map);

    ResponseInfo delMtlNoByMaterial(String mtlNo);

    ResponseInfo getPartName(String partName);

    ResponseInfo getChooseCurrentMaterials2(AdhesiveMaterialChooseRequest request);

    ResponseInfo getChooseCompositeMaterials2(AdhesiveMaterialChooseRequest request);

    ResponseInfo getInsertMaterial2(AdhesiveMaterialChooseRequest request);

    ResponseInfo getCompositeMaterialsAdd2(AdhesiveMaterialAddRequest request);

    ResponseInfo check(List<MaterialQueryRequest> request, Integer choose);

}
